package day6.zy0;

public class Test {
//    1：答：什么是多线程编程：多线程的含义是将程序任务分成几个并行的子任务，特别是在网络编程中，你会发现很多功能是可以并发执行的，比如网络传输速度较慢，用户输入速度较慢，你可以用两个独立的线程去完成这两个功能，而不影响正常的显示或其他功能。什么时候使用多线程：主要处理程序在一部分上会堵塞，在另一部分需要持续运行的场合。
//            2：答：JAVA提供的锁是对象级的而不是线程级的，每个对象都有锁，通过线程获得。如果线程需要等待某些锁那么调用对象中的wait()方法就有意义了。如果wait()方法定义在Thread类中，线程正在等待的是哪个锁就不明显了。简单的说，由于wait，notify和notifyAll都是锁级别的操作，所以把他们定义在Object类中因为锁属于对象。
//            3：答：最主要是使得其他线程可以使用同步控制块或者方法(锁代码块和方法锁)。wait只能在同步控制方法或者同步控制块里面使用，而sleep可以在任何地方使用(使用范围)  sleep方法属于Thread类中方法,wait属于Object的成员方法
//4:答：Runnable的实现方式是实现其接口即可
//            Thread的实现方式是继承其类
//    Runnable接口支持多继承，但基本上用不到
//    Thread实现了Runnable接口并进行了扩展，而Thread和Runnable的实质是实现的关系，不是同类东西，所以Runnable或Thread本身没有可比性
//
//    选择题：A D C C

}
